package com.ruoyi.translate.domain;

import java.math.BigDecimal;
import java.util.List;

import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;

import com.entity.concat.ITimeEntity;
import com.ruoyi.common.core.domain.Entity;

/**
 * 发票对象 mg_translate
 * 
 * @author ruoyi
 * @date 2024-01-18
 */
public class Translate extends Entity implements ITimeEntity<Long>
{
    private static final long serialVersionUID = 1L;

    /**  */
    private Long id;

    /** 用户id */
    @Excel(name = "用户id")
    private Integer userId;

    /** 用户姓名 （冗余） */
    @Excel(name = "用户姓名 ")
    private String userName;

    /** 手机号（冗余） */
    @Excel(name = "手机号")
    private String mobile;

    /** 关联id */
//    @Excel(name = "关联id")
    private Integer assocId;

    /** 充值单号 */
    @Excel(name = "充值单号")
    private String orderSn;

    /** 发票类型 0 预存 发票 1 订单发票 */
    @Excel(name = "发票类型", readConverterExp = "0=预存发票,1=订单发票")
    private Byte type;

    /** 邮箱 */
    @Excel(name = "邮箱")
    private String email;

    /** 税号 */
    @Excel(name = "税号")
    private String dutyParagraph;

    /** 发票抬头 */
    @Excel(name = "发票抬头")
    private String invoiceHeader;

    /** 发票内容(0= 论文润色费,1=翻译费,2= 文献检索服务费用,3=信息服务费用) */
    @Excel(name="发票内容", readConverterExp="0=英文润色费,1=语言编辑费,2=校对服务费,3=翻译服务费,4=文献检索服务费,5=科研绘图费,6=图文设计费,7=数据分析服务费,8=信息服务费,9=技术服务费,10=技术咨询费,11=科技信息咨询,12=其它类型需求可联系客服（选前请确保所选种类符合你单位要求）")
    private Long invoiceContent;

    /** 发票抬头类型 (0 =个人,1= 企业) */
    @Excel(name = "发票抬头类型", readConverterExp = "0=个人,1=企业")
    private Long invoiceHeaderType;

    /** 开票金额 */
    @Excel(name = "开票金额")
    private BigDecimal money;

    /** 申请时间 */
    @Excel(name = "申请时间")
    private Long applyTime;

    /** 审核状态 0待审核 1 未通过 1 已通过 */
    @Excel(name = "审核状态", readConverterExp ="0=待审核,1=未通过,2=已通过")
    private Long auditStatus;

    /** 发票链接 */
//    @Excel(name = "发票链接")
    private String file;
    
    /**
     * 审核原因
     */
    private String reason;
    
    
    /**
     * 服务类型
     */
    private Integer serviceId;
    
    private List<Integer> ids;
    

	public void setId(Long id) 
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }
    public void setUserId(Integer userId) 
    {
        this.userId = userId;
    }

    public Integer getUserId() 
    {
        return userId;
    }
    public void setUserName(String userName) 
    {
        this.userName = userName;
    }

    public String getUserName() 
    {
        return userName;
    }
    public void setMobile(String mobile) 
    {
        this.mobile = mobile;
    }

    public String getMobile() 
    {
        return mobile;
    }
    public void setAssocId(Integer assocId) 
    {
        this.assocId = assocId;
    }

    public Integer getAssocId() 
    {
        return assocId;
    }
    public void setOrderSn(String orderSn) 
    {
        this.orderSn = orderSn;
    }

    public String getOrderSn() 
    {
        return orderSn;
    }
    public void setType(Byte type) 
    {
        this.type = type;
    }

    public Byte getType() 
    {
        return type;
    }
    public void setEmail(String email) 
    {
        this.email = email;
    }

    public String getEmail() 
    {
        return email;
    }
    public void setDutyParagraph(String dutyParagraph) 
    {
        this.dutyParagraph = dutyParagraph;
    }

    public String getDutyParagraph() 
    {
        return dutyParagraph;
    }
    public void setInvoiceHeader(String invoiceHeader) 
    {
        this.invoiceHeader = invoiceHeader;
    }

    public String getInvoiceHeader() 
    {
        return invoiceHeader;
    }
    public void setInvoiceContent(Long invoiceContent) 
    {
        this.invoiceContent = invoiceContent;
    }

    public Long getInvoiceContent() 
    {
        return invoiceContent;
    }
    public void setInvoiceHeaderType(Long invoiceHeaderType) 
    {
        this.invoiceHeaderType = invoiceHeaderType;
    }

    public Long getInvoiceHeaderType() 
    {
        return invoiceHeaderType;
    }
    public void setMoney(BigDecimal money) 
    {
        this.money = money;
    }

    public BigDecimal getMoney() 
    {
        return money;
    }
    public void setApplyTime(Long applyTime) 
    {
        this.applyTime = applyTime;
    }

    public Long getApplyTime() 
    {
        return applyTime;
    }
    public void setAuditStatus(Long auditStatus) 
    {
        this.auditStatus = auditStatus;
    }

    public Long getAuditStatus() 
    {
        return auditStatus;
    }
    public void setFile(String file) 
    {
        this.file = file;
    }

    public String getFile() 
    {
        return file;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("userId", getUserId())
            .append("userName", getUserName())
            .append("mobile", getMobile())
            .append("assocId", getAssocId())
            .append("orderSn", getOrderSn())
            .append("type", getType())
            .append("email", getEmail())
            .append("dutyParagraph", getDutyParagraph())
            .append("invoiceHeader", getInvoiceHeader())
            .append("invoiceContent", getInvoiceContent())
            .append("invoiceHeaderType", getInvoiceHeaderType())
            .append("money", getMoney())
            .append("applyTime", getApplyTime())
            .append("auditStatus", getAuditStatus())
            .append("file", getFile())
            .append("createTime", getCreateTime())
            .append("updateTime", getUpdateTime())
            .toString();
    }

	public Integer getServiceId() {
		return serviceId;
	}

	public void setServiceId(Integer serviceId) {
		this.serviceId = serviceId;
	}

	public List<Integer> getIds() {
		return ids;
	}

	public void setIds(List<Integer> ids) {
		this.ids = ids;
	}

	public String getReason() {
		return reason;
	}

	public void setReason(String reason) {
		this.reason = reason;
	}
}
